Kurt Hsu's blog

The Rails developer in taiwan.


  • 首頁

  • 標籤

  • 分類

  • 歸檔

[Git]Git & Github退回指定版本簡易作法

發表於 2018-04-12 更新於 2019-08-21 分類於 Github , Git

狀況1.Git退回上一個或指定commit
狀況2.Git把剛剛修改的東西全數取消
狀況3.把剛剛git add追蹤的東西取消掉
狀況4.把已推上Github的commit倒退

狀況1.Git退回上一個或指定commit


先看commit的歷史紀錄
$ git log
可以看到commit是一堆亂數
此時有兩個方法退回之前的版本

$ git reset HEAD~1
退回上一個版本
也可以2,3,4這樣看想退幾步

$ git checkout 94bf1215a415070c71908536c7bd379e9fbd7675
這串亂碼是剛剛在git log裡面看到的
切過去之後他會要求你切新的分支出去

狀況2.Git把剛剛修改的東西全數取消


最簡單的指令
$ git checkout .
可以把剛剛修改過尚未紀錄準備上commit(git add)的檔案全數還原
那如果不小心git add檔案的話呢?
看狀況3

狀況3.把剛剛git add追蹤的東西取消掉


git reset
或者可以指定檔案
git reset filename

狀況4.把已推上Github的commit倒退


我們已經會在本地端的Git操控版本退回去了,但如果已經上Github的話呢?
Github只能繼續往下走不能往回走!
所以最簡單的做法就是push force

在本地端退回到想要回去的版本之後下
$ git push -f
就會把當前的版本全數覆蓋過去不論Github上面的所有版本紀錄如何
記得這是無法復原的!!請慎用

# Git # Github # commit
[Rails]簡單的掌握Routes
[Rails]簡易操作自己的model migration schema
  • 文章目錄
  • 本站概要

Kurt Hsu

Progress One Percent Every Day
171 文章
55 分類
163 標籤
RSS
  1. 1. 狀況1.Git退回上一個或指定commit
  2. 2. 狀況2.Git把剛剛修改的東西全數取消
  3. 3. 狀況3.把剛剛git add追蹤的東西取消掉
  4. 4. 狀況4.把已推上Github的commit倒退
© 2020 Kurt Hsu
由 Hexo 強力驅動 v3.8.0
|
主題 – NexT.Muse v7.3.0